{
  "bundles": [
    {
      "@type": "NXBundle",
      "artifactId": "nuxeo-automation-features",
      "artifactVersion": "2021.67.4",
      "bundleGroup": {
        "@type": "NXBundleGroup",
        "bundleIds": [
          "org.nuxeo.ecm.automation.core",
          "org.nuxeo.ecm.automation.features",
          "org.nuxeo.ecm.automation.io",
          "org.nuxeo.ecm.automation.jsf",
          "org.nuxeo.ecm.automation.scripting",
          "org.nuxeo.ecm.automation.server"
        ],
        "hierarchyPath": "/grp:org.nuxeo.ecm.automation",
        "id": "grp:org.nuxeo.ecm.automation",
        "name": "org.nuxeo.ecm.automation",
        "parentIds": [],
        "readmes": [],
        "version": "2021.67"
      },
      "bundleId": "org.nuxeo.ecm.automation.features",
      "components": [
        {
          "@type": "NXComponent",
          "aliases": [
            "org.nuxeo.ecm.core.automation.featuresContrib"
          ],
          "documentation": "@author Bogdan Stefanescu (bs@nuxeo.com)\n",
          "documentationHtml": "<p></p>",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.operation.OperationServiceComponent--operations",
              "hierarchyPath": "/grp:org.nuxeo.ecm.automation/org.nuxeo.ecm.automation.features/org.nuxeo.ecm.core.automation.features.operations/Contributions/org.nuxeo.ecm.core.automation.features.operations--operations",
              "id": "org.nuxeo.ecm.core.automation.features.operations--operations",
              "registrationOrder": 5,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.operation.OperationServiceComponent",
                "name": "org.nuxeo.ecm.core.operation.OperationServiceComponent",
                "type": "service"
              },
              "version": "2021.67.4",
              "xml": "<extension point=\"operations\" target=\"org.nuxeo.ecm.core.operation.OperationServiceComponent\">\n\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.query.DocumentPaginatedQuery\">\n      <widgets>\n        <widget name=\"query\" type=\"codearea\">\n          <labels>\n            <label mode=\"any\">Query</label>\n          </labels>\n          <properties mode=\"any\">\n            <property name=\"language\">nxql</property>\n            <property name=\"width\">100%</property>\n            <property name=\"height\">100%</property>\n          </properties>\n          <fields>\n            <field>query</field>\n          </fields>\n        </widget>\n      </widgets>\n    </operation>\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.query.ResultSetPaginatedQuery\">\n      <widgets>\n        <widget name=\"query\" type=\"codearea\">\n          <labels>\n            <label mode=\"any\">ResultSet Query</label>\n          </labels>\n          <properties mode=\"any\">\n            <property name=\"language\">nxql</property>\n            <property name=\"width\">100%</property>\n            <property name=\"height\">100%</property>\n          </properties>\n          <fields>\n            <field>query</field>\n          </fields>\n        </widget>\n      </widgets>\n    </operation>\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.AuditLog\"/>\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.AuditQuery\"/>\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.AuditPageProviderOperation\"/>\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.AuditRestore\"/>\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.CreateRelation\"/>\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.GetRelations\"/>\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.DeleteRelation\"/>\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.DocumentPageProviderOperation\">\n      <widgets>\n        <widget name=\"query\" type=\"codearea\">\n            <labels>\n              <label mode=\"any\">NXQL query</label>\n            </labels>\n            <properties mode=\"any\">\n              <property name=\"language\">nxql</property>\n              <property name=\"width\">100%</property>\n              <property name=\"height\">100%</property>\n            </properties>\n             <fields>\n              <field>query</field>\n            </fields>\n        </widget>\n      </widgets>\n    </operation>\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.ResultSetPageProviderOperation\"/>\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.users.GetDocumentPrincipalEmails\"/>\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.users.GetDocumentUsersAndGroups\"/>\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.users.QueryUsers\"/>\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.users.CreateOrUpdateUser\"/>\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.users.CreateOrUpdateGroup\"/>\n\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.notification.SendMail\"/>\n\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.FileManagerImport\"/>\n\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.FileManagerImportWithProperties\"/>\n\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.FileManagerCreateFolder\"/>\n\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.BlobHolderAttach\"/>\n\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.GetActions\"/>\n\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.management.GetCounters\"/>\n\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.GetDirectoryEntries\"/>\n\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.UserInvite\"/>\n\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.UserWorkspace\"/>\n\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.RunOperationOnProvider\"/>\n\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.directory.CreateDirectoryEntries\"/>\n\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.directory.CreateVocabularyEntry\"/>\n\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.directory.DeleteDirectoryEntries\"/>\n\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.directory.UpdateDirectoryEntries\"/>\n\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.directory.ReadDirectoryEntries\"/>\n\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.directory.DirectoryProjection\"/>\n\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.directory.LoadFromCSV\"/>\n\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.users.GetNuxeoPrincipal\"/>\n\n  \t<operation class=\"org.nuxeo.ecm.automation.core.operations.users.SuggestUserEntries\"/>\n\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.directory.SuggestDirectoryEntries\"/>\n\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.bulk.BulkRunAction\"/>\n\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.bulk.BulkWaitForAction\"/>\n\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.collections.SuggestCollectionEntry\"/>\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.collections.CreateCollectionOperation\"/>\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.collections.AddToCollectionOperation\"/>\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.collections.RemoveFromCollectionOperation\"/>\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.collections.RemoveFromFavoritesOperation\"/>\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.collections.AddToFavoritesOperation\"/>\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.collections.GetCollectionsOperation\"/>\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.collections.GetDocumentsFromCollectionOperation\"/>\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.collections.GetDocumentsFromFavoritesOperation\"/>\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.collections.FetchFavorites\"/>\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.collections.MoveCollectionMemberOperation\"/>\n\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.workmanager.WorkManagerRunWorkInFailure\"/>\n\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.MetricsStart\"/>\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.MetricsStop\"/>\n\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.operation.OperationServiceComponent--chains",
              "hierarchyPath": "/grp:org.nuxeo.ecm.automation/org.nuxeo.ecm.automation.features/org.nuxeo.ecm.core.automation.features.operations/Contributions/org.nuxeo.ecm.core.automation.features.operations--chains",
              "id": "org.nuxeo.ecm.core.automation.features.operations--chains",
              "registrationOrder": 0,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.operation.OperationServiceComponent",
                "name": "org.nuxeo.ecm.core.operation.OperationServiceComponent",
                "type": "service"
              },
              "version": "2021.67.4",
              "xml": "<extension point=\"chains\" target=\"org.nuxeo.ecm.core.operation.OperationServiceComponent\">\n    <chain id=\"VersionAndAttachFile\">\n      <operation id=\"Context.PushBlobList\">\n      </operation>\n      <operation id=\"Repository.GetDocument\">\n        <param name=\"value\" type=\"string\">expr:Context.get(\"currentDocument\")</param>\n      </operation>\n      <operation id=\"Document.CheckIn\">\n        <param name=\"version\" type=\"string\">minor</param>\n        <param name=\"comment\" type=\"string\">Automatic checkin before file update</param>\n      </operation>\n      <operation id=\"Context.SetInputAsVar\">\n        <param name=\"name\" type=\"string\">newDocument</param>\n      </operation>\n      <operation id=\"Context.SetVar\">\n        <param name=\"name\" type=\"string\">currentDocument</param>\n        <param name=\"value\" type=\"string\">expr:Context.get(\"newDocument\").id</param>\n      </operation>\n      <operation id=\"Context.PopBlobList\">\n      </operation>\n      <operation id=\"BlobHolder.AttachOnCurrentDocument\">\n        <param name=\"useMainBlob\" type=\"boolean\">true</param>\n      </operation>\n    </chain>\n    <chain id=\"AttachFiles\">\n      <operation id=\"BlobHolder.AttachOnCurrentDocument\">\n        <param name=\"useMainBlob\" type=\"boolean\">false</param>\n      </operation>\n    </chain>\n    <chain id=\"VersionAndAttachFiles\">\n      <operation id=\"Context.PushBlobList\">\n      </operation>\n      <operation id=\"Repository.GetDocument\">\n        <param name=\"value\" type=\"string\">expr:Context.get(\"currentDocument\")</param>\n      </operation>\n      <operation id=\"Document.CheckIn\">\n        <param name=\"version\" type=\"string\">minor</param>\n        <param name=\"comment\" type=\"string\">Automatic checkin before files update</param>\n      </operation>\n      <operation id=\"Context.SetInputAsVar\">\n        <param name=\"name\" type=\"string\">newDocument</param>\n      </operation>\n      <operation id=\"Context.SetVar\">\n        <param name=\"name\" type=\"string\">currentDocument</param>\n        <param name=\"value\" type=\"string\">expr:Context.get(\"newDocument\").id</param>\n      </operation>\n      <operation id=\"Context.PopBlobList\">\n      </operation>\n      <operation id=\"BlobHolder.AttachOnCurrentDocument\">\n        <param name=\"useMainBlob\" type=\"boolean\">false</param>\n      </operation>\n    </chain>\n    <chain id=\"FileManager.ImportWithMetaData\">\n      <operation id=\"FileManager.ImportWithProperties\">\n        <param name=\"overwrite\" type=\"boolean\">true</param>\n        <param name=\"properties\" type=\"properties\">expr:Context.get(\"docMetaData\")</param>\n      </operation>\n    </chain>\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.runtime.ConfigurationService--configuration",
              "hierarchyPath": "/grp:org.nuxeo.ecm.automation/org.nuxeo.ecm.automation.features/org.nuxeo.ecm.core.automation.features.operations/Contributions/org.nuxeo.ecm.core.automation.features.operations--configuration",
              "id": "org.nuxeo.ecm.core.automation.features.operations--configuration",
              "registrationOrder": 8,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.runtime.ConfigurationService",
                "name": "org.nuxeo.runtime.ConfigurationService",
                "type": "service"
              },
              "version": "2021.67.4",
              "xml": "<extension point=\"configuration\" target=\"org.nuxeo.runtime.ConfigurationService\">\n    <property name=\"org.nuxeo.ignore.empty.searchterm\">true</property>\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.automation/org.nuxeo.ecm.automation.features/org.nuxeo.ecm.core.automation.features.operations",
          "name": "org.nuxeo.ecm.core.automation.features.operations",
          "requirements": [
            "org.nuxeo.ecm.core.automation.coreContrib"
          ],
          "resolutionOrder": 61,
          "services": [],
          "startOrder": 128,
          "version": "2021.67.4",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.ecm.core.automation.features.operations\" version=\"1.0\">\n\n  <alias>org.nuxeo.ecm.core.automation.featuresContrib</alias>\n  <require>org.nuxeo.ecm.core.automation.coreContrib</require>\n\n  <documentation>@author Bogdan Stefanescu (bs@nuxeo.com)</documentation>\n\n  <extension target=\"org.nuxeo.ecm.core.operation.OperationServiceComponent\"\n    point=\"operations\">\n\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.query.DocumentPaginatedQuery\">\n      <widgets>\n        <widget name=\"query\" type=\"codearea\">\n          <labels>\n            <label mode=\"any\">Query</label>\n          </labels>\n          <properties mode=\"any\">\n            <property name=\"language\">nxql</property>\n            <property name=\"width\">100%</property>\n            <property name=\"height\">100%</property>\n          </properties>\n          <fields>\n            <field>query</field>\n          </fields>\n        </widget>\n      </widgets>\n    </operation>\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.query.ResultSetPaginatedQuery\">\n      <widgets>\n        <widget name=\"query\" type=\"codearea\">\n          <labels>\n            <label mode=\"any\">ResultSet Query</label>\n          </labels>\n          <properties mode=\"any\">\n            <property name=\"language\">nxql</property>\n            <property name=\"width\">100%</property>\n            <property name=\"height\">100%</property>\n          </properties>\n          <fields>\n            <field>query</field>\n          </fields>\n        </widget>\n      </widgets>\n    </operation>\n    <operation\n      class=\"org.nuxeo.ecm.automation.core.operations.services.AuditLog\" />\n    <operation\n      class=\"org.nuxeo.ecm.automation.core.operations.services.AuditQuery\" />\n    <operation\n      class=\"org.nuxeo.ecm.automation.core.operations.services.AuditPageProviderOperation\" />\n    <operation\n      class=\"org.nuxeo.ecm.automation.core.operations.services.AuditRestore\" />\n    <operation\n      class=\"org.nuxeo.ecm.automation.core.operations.services.CreateRelation\" />\n    <operation\n      class=\"org.nuxeo.ecm.automation.core.operations.services.GetRelations\" />\n    <operation\n      class=\"org.nuxeo.ecm.automation.core.operations.services.DeleteRelation\" />\n    <operation\n      class=\"org.nuxeo.ecm.automation.core.operations.services.DocumentPageProviderOperation\" >\n      <widgets>\n        <widget name=\"query\" type=\"codearea\">\n            <labels>\n              <label mode=\"any\">NXQL query</label>\n            </labels>\n            <properties mode=\"any\">\n              <property name=\"language\">nxql</property>\n              <property name=\"width\">100%</property>\n              <property name=\"height\">100%</property>\n            </properties>\n             <fields>\n              <field>query</field>\n            </fields>\n        </widget>\n      </widgets>\n    </operation>\n    <operation\n      class=\"org.nuxeo.ecm.automation.core.operations.services.ResultSetPageProviderOperation\" />\n    <operation\n      class=\"org.nuxeo.ecm.automation.core.operations.users.GetDocumentPrincipalEmails\" />\n    <operation\n      class=\"org.nuxeo.ecm.automation.core.operations.users.GetDocumentUsersAndGroups\" />\n    <operation\n      class=\"org.nuxeo.ecm.automation.core.operations.users.QueryUsers\" />\n    <operation\n      class=\"org.nuxeo.ecm.automation.core.operations.users.CreateOrUpdateUser\" />\n    <operation\n      class=\"org.nuxeo.ecm.automation.core.operations.users.CreateOrUpdateGroup\" />\n\n    <operation\n      class=\"org.nuxeo.ecm.automation.core.operations.notification.SendMail\" />\n\n    <operation\n      class=\"org.nuxeo.ecm.automation.core.operations.services.FileManagerImport\" />\n\n    <operation  class=\"org.nuxeo.ecm.automation.core.operations.services.FileManagerImportWithProperties\" />\n\n    <operation  class=\"org.nuxeo.ecm.automation.core.operations.services.FileManagerCreateFolder\" />\n\n    <operation\n      class=\"org.nuxeo.ecm.automation.core.operations.services.BlobHolderAttach\" />\n\n    <operation\n      class=\"org.nuxeo.ecm.automation.core.operations.services.GetActions\" />\n\n    <operation\n      class=\"org.nuxeo.ecm.automation.core.operations.management.GetCounters\" />\n\n    <operation\n      class=\"org.nuxeo.ecm.automation.core.operations.services.GetDirectoryEntries\" />\n\n    <operation\n      class=\"org.nuxeo.ecm.automation.core.operations.services.UserInvite\" />\n\n    <operation\n      class=\"org.nuxeo.ecm.automation.core.operations.services.UserWorkspace\" />\n\n    <operation\n      class=\"org.nuxeo.ecm.automation.core.operations.services.RunOperationOnProvider\" />\n\n    <operation\n      class=\"org.nuxeo.ecm.automation.core.operations.services.directory.CreateDirectoryEntries\" />\n\n    <operation\n      class=\"org.nuxeo.ecm.automation.core.operations.services.directory.CreateVocabularyEntry\" />\n\n    <operation\n      class=\"org.nuxeo.ecm.automation.core.operations.services.directory.DeleteDirectoryEntries\" />\n\n    <operation\n      class=\"org.nuxeo.ecm.automation.core.operations.services.directory.UpdateDirectoryEntries\" />\n\n    <operation\n      class=\"org.nuxeo.ecm.automation.core.operations.services.directory.ReadDirectoryEntries\" />\n\n    <operation\n      class=\"org.nuxeo.ecm.automation.core.operations.services.directory.DirectoryProjection\" />\n\n    <operation\n      class=\"org.nuxeo.ecm.automation.core.operations.services.directory.LoadFromCSV\" />\n\n    <operation\n      class=\"org.nuxeo.ecm.automation.core.operations.users.GetNuxeoPrincipal\" />\n\n  \t<operation\n      class=\"org.nuxeo.ecm.automation.core.operations.users.SuggestUserEntries\" />\n\n    <operation\n      class=\"org.nuxeo.ecm.automation.core.operations.services.directory.SuggestDirectoryEntries\" />\n\n    <operation\n      class=\"org.nuxeo.ecm.automation.core.operations.services.bulk.BulkRunAction\" />\n\n    <operation\n      class=\"org.nuxeo.ecm.automation.core.operations.services.bulk.BulkWaitForAction\" />\n\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.collections.SuggestCollectionEntry\" />\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.collections.CreateCollectionOperation\" />\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.collections.AddToCollectionOperation\" />\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.collections.RemoveFromCollectionOperation\" />\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.collections.RemoveFromFavoritesOperation\" />\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.collections.AddToFavoritesOperation\" />\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.collections.GetCollectionsOperation\" />\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.collections.GetDocumentsFromCollectionOperation\" />\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.collections.GetDocumentsFromFavoritesOperation\" />\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.collections.FetchFavorites\" />\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.collections.MoveCollectionMemberOperation\" />\n\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.workmanager.WorkManagerRunWorkInFailure\" />\n\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.MetricsStart\" />\n    <operation class=\"org.nuxeo.ecm.automation.core.operations.services.MetricsStop\" />\n\n  </extension>\n\n  <extension point=\"chains\"\n    target=\"org.nuxeo.ecm.core.operation.OperationServiceComponent\">\n    <chain id=\"VersionAndAttachFile\">\n      <operation id=\"Context.PushBlobList\">\n      </operation>\n      <operation id =\"Repository.GetDocument\">\n        <param type=\"string\" name=\"value\">expr:Context.get(\"currentDocument\")</param>\n      </operation>\n      <operation id=\"Document.CheckIn\">\n        <param type=\"string\" name=\"version\">minor</param>\n        <param type=\"string\" name=\"comment\">Automatic checkin before file update</param>\n      </operation>\n      <operation id=\"Context.SetInputAsVar\">\n        <param type=\"string\" name=\"name\">newDocument</param>\n      </operation>\n      <operation id=\"Context.SetVar\">\n        <param type=\"string\" name=\"name\">currentDocument</param>\n        <param type=\"string\" name=\"value\">expr:Context.get(\"newDocument\").id</param>\n      </operation>\n      <operation id=\"Context.PopBlobList\">\n      </operation>\n      <operation id=\"BlobHolder.AttachOnCurrentDocument\">\n        <param type=\"boolean\" name=\"useMainBlob\">true</param>\n      </operation>\n    </chain>\n    <chain id=\"AttachFiles\">\n      <operation id=\"BlobHolder.AttachOnCurrentDocument\">\n        <param type=\"boolean\" name=\"useMainBlob\">false</param>\n      </operation>\n    </chain>\n    <chain id=\"VersionAndAttachFiles\">\n      <operation id=\"Context.PushBlobList\">\n      </operation>\n      <operation id =\"Repository.GetDocument\">\n        <param type=\"string\" name=\"value\">expr:Context.get(\"currentDocument\")</param>\n      </operation>\n      <operation id=\"Document.CheckIn\">\n        <param type=\"string\" name=\"version\">minor</param>\n        <param type=\"string\" name=\"comment\">Automatic checkin before files update</param>\n      </operation>\n      <operation id=\"Context.SetInputAsVar\">\n        <param type=\"string\" name=\"name\">newDocument</param>\n      </operation>\n      <operation id=\"Context.SetVar\">\n        <param type=\"string\" name=\"name\">currentDocument</param>\n        <param type=\"string\" name=\"value\">expr:Context.get(\"newDocument\").id</param>\n      </operation>\n      <operation id=\"Context.PopBlobList\">\n      </operation>\n      <operation id=\"BlobHolder.AttachOnCurrentDocument\">\n        <param type=\"boolean\" name=\"useMainBlob\">false</param>\n      </operation>\n    </chain>\n    <chain id=\"FileManager.ImportWithMetaData\">\n      <operation id=\"FileManager.ImportWithProperties\">\n        <param type=\"boolean\" name=\"overwrite\">true</param>\n        <param type=\"properties\" name=\"properties\">expr:Context.get(\"docMetaData\")</param>\n      </operation>\n    </chain>\n  </extension>\n\n  <extension target=\"org.nuxeo.runtime.ConfigurationService\" point=\"configuration\">\n    <property name=\"org.nuxeo.ignore.empty.searchterm\">true</property>\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/operations-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.automation.server.AutomationServer--bindings",
              "hierarchyPath": "/grp:org.nuxeo.ecm.automation/org.nuxeo.ecm.automation.features/org.nuxeo.ecm.core.automation.features.bindings/Contributions/org.nuxeo.ecm.core.automation.features.bindings--bindings",
              "id": "org.nuxeo.ecm.core.automation.features.bindings--bindings",
              "registrationOrder": 0,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.automation.server.AutomationServer",
                "name": "org.nuxeo.ecm.automation.server.AutomationServer",
                "type": "service"
              },
              "version": "2021.67.4",
              "xml": "<extension point=\"bindings\" target=\"org.nuxeo.ecm.automation.server.AutomationServer\">\n    <!-- don't allow direct access to Audit log -->\n    <binding name=\"Audit.Query\">\n      <administrator>true</administrator>\n    </binding>\n    <binding name=\"Audit.QueryWithPageProvider\">\n      <administrator>true</administrator>\n    </binding>\n    <!-- don't allow direct access to user operations -->\n    <binding name=\"User.CreateOrUpdate\">\n      <administrator>true</administrator>\n    </binding>\n    <binding name=\"Group.CreateOrUpdate\">\n      <administrator>true</administrator>\n    </binding>\n    <binding name=\"Bulk.WaitForAction\">\n      <administrator>true</administrator>\n    </binding>\n    <binding name=\"Metrics.Start\">\n      <administrator>true</administrator>\n    </binding>\n    <binding name=\"Metrics.Stop\">\n      <administrator>true</administrator>\n    </binding>\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.automation/org.nuxeo.ecm.automation.features/org.nuxeo.ecm.core.automation.features.bindings",
          "name": "org.nuxeo.ecm.core.automation.features.bindings",
          "requirements": [],
          "resolutionOrder": 62,
          "services": [],
          "startOrder": 126,
          "version": "2021.67.4",
          "xmlFileContent": "<component name=\"org.nuxeo.ecm.core.automation.features.bindings\">\n  <extension target=\"org.nuxeo.ecm.automation.server.AutomationServer\"\n    point=\"bindings\">\n    <!-- don't allow direct access to Audit log -->\n    <binding name=\"Audit.Query\">\n      <administrator>true</administrator>\n    </binding>\n    <binding name=\"Audit.QueryWithPageProvider\">\n      <administrator>true</administrator>\n    </binding>\n    <!-- don't allow direct access to user operations -->\n    <binding name=\"User.CreateOrUpdate\">\n      <administrator>true</administrator>\n    </binding>\n    <binding name=\"Group.CreateOrUpdate\">\n      <administrator>true</administrator>\n    </binding>\n    <binding name=\"Bulk.WaitForAction\">\n      <administrator>true</administrator>\n    </binding>\n    <binding name=\"Metrics.Start\">\n      <administrator>true</administrator>\n    </binding>\n    <binding name=\"Metrics.Stop\">\n      <administrator>true</administrator>\n    </binding>\n  </extension>\n</component>\n",
          "xmlFileName": "/OSGI-INF/bindings-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.query.api.PageProviderService--providers",
              "hierarchyPath": "/grp:org.nuxeo.ecm.automation/org.nuxeo.ecm.automation.features/org.nuxeo.ecm.platform.audit.PageProviderservice.automation.contrib/Contributions/org.nuxeo.ecm.platform.audit.PageProviderservice.automation.contrib--providers",
              "id": "org.nuxeo.ecm.platform.audit.PageProviderservice.automation.contrib--providers",
              "registrationOrder": 2,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.query.api.PageProviderService",
                "name": "org.nuxeo.ecm.platform.query.api.PageProviderService",
                "type": "service"
              },
              "version": "2021.67.4",
              "xml": "<extension point=\"providers\" target=\"org.nuxeo.ecm.platform.query.api.PageProviderService\">\n\n    <genericPageProvider class=\"org.nuxeo.ecm.platform.audit.api.AuditPageProvider\" name=\"AUDIT_BROWSER\">\n      <whereClause docType=\"BasicAuditSearch\">\n        <predicate operator=\">\" parameter=\"log.id\">\n          <field name=\"logId\" schema=\"basicauditsearch\"/>\n        </predicate>\n        <predicate operator=\"BETWEEN\" parameter=\"log.eventDate\">\n          <field name=\"startDate\" schema=\"basicauditsearch\"/>\n          <field name=\"endDate\" schema=\"basicauditsearch\"/>\n        </predicate>\n        <predicate operator=\"IN\" parameter=\"log.category\">\n          <field name=\"eventCategories\" schema=\"basicauditsearch\"/>\n        </predicate>\n        <predicate operator=\"IN\" parameter=\"log.eventId\">\n          <field name=\"eventIds\" schema=\"basicauditsearch\"/>\n        </predicate>\n        <predicate operator=\"IN\" parameter=\"log.principalName\">\n          <field name=\"principalNames\" schema=\"basicauditsearch\"/>\n        </predicate>\n      </whereClause>\n      <sort ascending=\"true\" column=\"log.eventDate\"/>\n      <sort ascending=\"true\" column=\"log.id\"/>\n      <pageSize>10</pageSize>\n    </genericPageProvider>\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.automation/org.nuxeo.ecm.automation.features/org.nuxeo.ecm.platform.audit.PageProviderservice.automation.contrib",
          "name": "org.nuxeo.ecm.platform.audit.PageProviderservice.automation.contrib",
          "requirements": [],
          "resolutionOrder": 63,
          "services": [],
          "startOrder": 273,
          "version": "2021.67.4",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n\n<component name=\"org.nuxeo.ecm.platform.audit.PageProviderservice.automation.contrib\">\n\n\n  <extension target=\"org.nuxeo.ecm.platform.query.api.PageProviderService\"\n    point=\"providers\">\n\n    <genericPageProvider name=\"AUDIT_BROWSER\"\n      class=\"org.nuxeo.ecm.platform.audit.api.AuditPageProvider\">\n      <whereClause docType=\"BasicAuditSearch\">\n        <predicate parameter=\"log.id\" operator=\"&gt;\">\n          <field schema=\"basicauditsearch\" name=\"logId\" />\n        </predicate>\n        <predicate parameter=\"log.eventDate\" operator=\"BETWEEN\">\n          <field schema=\"basicauditsearch\" name=\"startDate\" />\n          <field schema=\"basicauditsearch\" name=\"endDate\" />\n        </predicate>\n        <predicate parameter=\"log.category\" operator=\"IN\">\n          <field schema=\"basicauditsearch\" name=\"eventCategories\" />\n        </predicate>\n        <predicate parameter=\"log.eventId\" operator=\"IN\">\n          <field schema=\"basicauditsearch\" name=\"eventIds\" />\n        </predicate>\n        <predicate parameter=\"log.principalName\" operator=\"IN\">\n          <field schema=\"basicauditsearch\" name=\"principalNames\" />\n        </predicate>\n      </whereClause>\n      <sort column=\"log.eventDate\" ascending=\"true\" />\n      <sort column=\"log.id\" ascending=\"true\" />\n      <pageSize>10</pageSize>\n    </genericPageProvider>\n\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/pageprovider-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.operation.OperationServiceComponent--contextHelpers",
              "hierarchyPath": "/grp:org.nuxeo.ecm.automation/org.nuxeo.ecm.automation.features/org.nuxeo.ecm.core.automation.contextContrib/Contributions/org.nuxeo.ecm.core.automation.contextContrib--contextHelpers",
              "id": "org.nuxeo.ecm.core.automation.contextContrib--contextHelpers",
              "registrationOrder": 0,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.operation.OperationServiceComponent",
                "name": "org.nuxeo.ecm.core.operation.OperationServiceComponent",
                "type": "service"
              },
              "version": "2021.67.4",
              "xml": "<extension point=\"contextHelpers\" target=\"org.nuxeo.ecm.core.operation.OperationServiceComponent\">\n    <contextHelper class=\"org.nuxeo.ecm.automation.features.PlatformFunctions\" id=\"Fn\"/>\n    <contextHelper class=\"org.nuxeo.ecm.automation.features.HTTPHelper\" id=\"HTTP\"/>\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentation": "\n      Contribution to determine which uid sequence generator to use, either the defaultSequencer or hibernateSequencer.\n      Since 10.1 the default value is false, so it will use the defaultSequencer.\n    \n",
              "documentationHtml": "<p>\nContribution to determine which uid sequence generator to use, either the defaultSequencer or hibernateSequencer.\nSince 10.1 the default value is false, so it will use the defaultSequencer.\n</p><p></p>",
              "extensionPoint": "org.nuxeo.runtime.ConfigurationService--configuration",
              "hierarchyPath": "/grp:org.nuxeo.ecm.automation/org.nuxeo.ecm.automation.features/org.nuxeo.ecm.core.automation.contextContrib/Contributions/org.nuxeo.ecm.core.automation.contextContrib--configuration",
              "id": "org.nuxeo.ecm.core.automation.contextContrib--configuration",
              "registrationOrder": 9,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.runtime.ConfigurationService",
                "name": "org.nuxeo.runtime.ConfigurationService",
                "type": "service"
              },
              "version": "2021.67.4",
              "xml": "<extension point=\"configuration\" target=\"org.nuxeo.runtime.ConfigurationService\">\n    <documentation>\n      Contribution to determine which uid sequence generator to use, either the defaultSequencer or hibernateSequencer.\n      Since 10.1 the default value is false, so it will use the defaultSequencer.\n    </documentation>\n    <property name=\"org.nuxeo.ecm.core.uidgen.sequencer.hibernate\">false</property>\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.automation/org.nuxeo.ecm.automation.features/org.nuxeo.ecm.core.automation.contextContrib",
          "name": "org.nuxeo.ecm.core.automation.contextContrib",
          "requirements": [],
          "resolutionOrder": 64,
          "services": [],
          "startOrder": 123,
          "version": "2021.67.4",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.ecm.core.automation.contextContrib\" version=\"1.0\">\n\n  <extension target=\"org.nuxeo.ecm.core.operation.OperationServiceComponent\"\n             point=\"contextHelpers\">\n    <contextHelper id=\"Fn\" class=\"org.nuxeo.ecm.automation.features.PlatformFunctions\"/>\n    <contextHelper id=\"HTTP\" class=\"org.nuxeo.ecm.automation.features.HTTPHelper\"/>\n  </extension>\n\n  <extension target=\"org.nuxeo.runtime.ConfigurationService\" point=\"configuration\">\n    <documentation>\n      Contribution to determine which uid sequence generator to use, either the defaultSequencer or hibernateSequencer.\n      Since 10.1 the default value is false, so it will use the defaultSequencer.\n    </documentation>\n    <property name=\"org.nuxeo.ecm.core.uidgen.sequencer.hibernate\">false</property>\n  </extension>\n</component>\n",
          "xmlFileName": "/OSGI-INF/helpers-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.actions.ActionService--filters",
              "hierarchyPath": "/grp:org.nuxeo.ecm.automation/org.nuxeo.ecm.automation.features/org.nuxeo.ecm.directory.actions.core/Contributions/org.nuxeo.ecm.directory.actions.core--filters",
              "id": "org.nuxeo.ecm.directory.actions.core--filters",
              "registrationOrder": 1,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.actions.ActionService",
                "name": "org.nuxeo.ecm.platform.actions.ActionService",
                "type": "service"
              },
              "version": "2021.67.4",
              "xml": "<extension point=\"filters\" target=\"org.nuxeo.ecm.platform.actions.ActionService\">\n\n    <filter id=\"directoriesManagementAccess\">\n      <rule grant=\"true\">\n        <condition>currentUser.administrator</condition>\n        <condition>currentUser.isMemberOf('powerusers')</condition>\n      </rule>\n    </filter>\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.automation/org.nuxeo.ecm.automation.features/org.nuxeo.ecm.directory.actions.core",
          "name": "org.nuxeo.ecm.directory.actions.core",
          "requirements": [],
          "resolutionOrder": 65,
          "services": [],
          "startOrder": 204,
          "version": "2021.67.4",
          "xmlFileContent": "<component name=\"org.nuxeo.ecm.directory.actions.core\">\n\n  <extension target=\"org.nuxeo.ecm.platform.actions.ActionService\"\n    point=\"filters\">\n\n    <filter id=\"directoriesManagementAccess\">\n      <rule grant=\"true\">\n        <condition>currentUser.administrator</condition>\n        <condition>currentUser.isMemberOf('powerusers')</condition>\n      </rule>\n    </filter>\n\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/filters-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.bulk--actions",
              "hierarchyPath": "/grp:org.nuxeo.ecm.automation/org.nuxeo.ecm.automation.features/org.nuxeo.ecm.core.automation.features.bulk/Contributions/org.nuxeo.ecm.core.automation.features.bulk--actions",
              "id": "org.nuxeo.ecm.core.automation.features.bulk--actions",
              "registrationOrder": 13,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.bulk",
                "name": "org.nuxeo.ecm.core.bulk",
                "type": "service"
              },
              "version": "2021.67.4",
              "xml": "<extension point=\"actions\" target=\"org.nuxeo.ecm.core.bulk\">\n    <action batchSize=\"5\" bucketSize=\"25\" httpEnabled=\"true\" inputStream=\"bulk/automation\" name=\"automation\" validationClass=\"org.nuxeo.ecm.automation.core.operations.services.bulk.validation.AutomationBulkValidation\"/>\n\n    <action batchSize=\"5\" bucketSize=\"25\" defaultScroller=\"elastic\" httpEnabled=\"true\" inputStream=\"bulk/automationUi\" name=\"automationUi\" validationClass=\"org.nuxeo.ecm.automation.core.operations.services.bulk.validation.AutomationBulkValidation\"/>\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.runtime.stream.service--streamProcessor",
              "hierarchyPath": "/grp:org.nuxeo.ecm.automation/org.nuxeo.ecm.automation.features/org.nuxeo.ecm.core.automation.features.bulk/Contributions/org.nuxeo.ecm.core.automation.features.bulk--streamProcessor",
              "id": "org.nuxeo.ecm.core.automation.features.bulk--streamProcessor",
              "registrationOrder": 17,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.runtime.stream.service",
                "name": "org.nuxeo.runtime.stream.service",
                "type": "service"
              },
              "version": "2021.67.4",
              "xml": "<extension point=\"streamProcessor\" target=\"org.nuxeo.runtime.stream.service\">\n    <streamProcessor class=\"org.nuxeo.ecm.automation.core.operations.services.bulk.AutomationBulkAction\" defaultConcurrency=\"2\" defaultPartitions=\"4\" name=\"automation\">\n    <policy continueOnFailure=\"true\" delay=\"1s\" maxRetries=\"3\" name=\"default\"/>\n    </streamProcessor>\n\n    <streamProcessor class=\"org.nuxeo.ecm.automation.core.operations.services.bulk.AutomationBulkActionUi\" defaultConcurrency=\"2\" defaultPartitions=\"4\" name=\"automationUi\">\n      <policy continueOnFailure=\"true\" delay=\"1s\" maxRetries=\"3\" name=\"default\"/>\n      <option name=\"failOnError\">false</option>\n    </streamProcessor>\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.automation/org.nuxeo.ecm.automation.features/org.nuxeo.ecm.core.automation.features.bulk",
          "name": "org.nuxeo.ecm.core.automation.features.bulk",
          "requirements": [
            "org.nuxeo.ecm.core.bulk.config"
          ],
          "resolutionOrder": 842,
          "services": [],
          "startOrder": 127,
          "version": "2021.67.4",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.ecm.core.automation.features.bulk\" version=\"1.0.0\">\n\n  <require>org.nuxeo.ecm.core.bulk.config</require>\n\n  <extension target=\"org.nuxeo.ecm.core.bulk\" point=\"actions\">\n    <action name=\"automation\" inputStream=\"bulk/automation\" bucketSize=\"25\" batchSize=\"5\" httpEnabled=\"true\"\n      validationClass=\"org.nuxeo.ecm.automation.core.operations.services.bulk.validation.AutomationBulkValidation\" />\n\n    <action name=\"automationUi\" inputStream=\"bulk/automationUi\" bucketSize=\"25\" batchSize=\"5\" httpEnabled=\"true\"\n      validationClass=\"org.nuxeo.ecm.automation.core.operations.services.bulk.validation.AutomationBulkValidation\"\n      defaultScroller=\"elastic\" />\n  </extension>\n\n  <extension target=\"org.nuxeo.runtime.stream.service\" point=\"streamProcessor\">\n    <streamProcessor name=\"automation\"\n      class=\"org.nuxeo.ecm.automation.core.operations.services.bulk.AutomationBulkAction\"\n      defaultConcurrency=\"${nuxeo.bulk.action.automation.defaultConcurrency:=2}\"\n      defaultPartitions=\"${nuxeo.bulk.action.automation.defaultPartitions:=4}\">\n    <policy name=\"default\" maxRetries=\"3\" delay=\"1s\" continueOnFailure=\"true\" />\n    </streamProcessor>\n\n    <streamProcessor name=\"automationUi\"\n      class=\"org.nuxeo.ecm.automation.core.operations.services.bulk.AutomationBulkActionUi\"\n      defaultConcurrency=\"${nuxeo.bulk.action.automationUi.defaultConcurrency:=2}\"\n      defaultPartitions=\"${nuxeo.bulk.action.automationUi.defaultPartitions:=4}\">\n      <policy name=\"default\" maxRetries=\"3\" delay=\"1s\" continueOnFailure=\"true\" />\n      <option name=\"failOnError\">false</option>\n    </streamProcessor>\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/bulk-contrib.xml",
          "xmlPureComponent": true
        }
      ],
      "fileName": "nuxeo-automation-features-2021.67.4.jar",
      "groupId": "org.nuxeo.ecm.automation",
      "hierarchyPath": "/grp:org.nuxeo.ecm.automation/org.nuxeo.ecm.automation.features",
      "id": "org.nuxeo.ecm.automation.features",
      "location": "",
      "manifest": "Manifest-Version: 1.0\r\nArchiver-Version: Plexus Archiver\r\nCreated-By: Apache Maven\r\nBuilt-By: root\r\nBuild-Jdk: 11.0.26\r\nBundle-ManifestVersion: 2\r\nBundle-Version: 2021.67.4-t20250211-223459\r\nBundle-Name: Nuxeo Automation Features\r\nBundle-SymbolicName: org.nuxeo.ecm.automation.features;singleton:=true\r\nBundle-Vendor: Nuxeo\r\nBundle-Localization: bundle\r\nRequire-Bundle: org.nuxeo.ecm.automation.core\r\nExport-Package: org.nuxeo.ecm.automation.core\r\nEclipse-LazyStart: true\r\nNuxeo-Component: OSGI-INF/operations-contrib.xml,OSGI-INF/bindings-con\r\n trib.xml,OSGI-INF/pageprovider-contrib.xml,OSGI-INF/helpers-contrib.x\r\n ml,OSGI-INF/filters-contrib.xml,OSGI-INF/bulk-contrib.xml\r\nBundle-Activator: org.nuxeo.ecm.automation.features.Activator\r\n\r\n",
      "maxResolutionOrder": 842,
      "minResolutionOrder": 61,
      "packages": [],
      "requirements": [
        "org.nuxeo.ecm.automation.core"
      ],
      "version": "2021.67.4"
    }
  ],
  "creationDate": 1739788074073,
  "key": "Nuxeo Platform-2021.67",
  "name": "Nuxeo Platform",
  "operations": [
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Services",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Retrieve list of available actions for a given category. Action context is built based on the Operation context (currentDocument will be fetched from Context if not provided as input). If this operation is executed in a chain that initialized the Seam context, it will be used for Action context",
      "hierarchyPath": "/op:Actions.GET",
      "label": "List available actions",
      "name": "Actions.GET",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.services.GetActions",
      "params": [
        {
          "description": null,
          "isRequired": true,
          "name": "category",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "lang",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "void",
        "blob",
        "document",
        "blob"
      ],
      "url": "Actions.GET",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Chain",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "hierarchyPath": "/op:AttachFiles",
      "label": "AttachFiles",
      "name": "AttachFiles",
      "operationClass": "org.nuxeo.ecm.automation.core.impl.OperationChainCompiler.CompiledChainImpl",
      "params": [],
      "signature": [
        "bloblist",
        "document",
        "blob",
        "document"
      ],
      "url": "AttachFiles",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [
        "Audit.Log"
      ],
      "category": "Services",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Log events into audit for each of the input document. The operation accept as input one ore more documents that are returned back as the output.",
      "hierarchyPath": "/op:Audit.LogEvent",
      "label": "Log Event In Audit",
      "name": "Audit.LogEvent",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.services.AuditLog",
      "params": [
        {
          "description": null,
          "isRequired": true,
          "name": "event",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": "AuditEvent"
        },
        {
          "description": null,
          "isRequired": false,
          "name": "category",
          "order": 0,
          "type": "string",
          "values": [
            "Automation"
          ],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "comment",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": "TextArea"
        }
      ],
      "signature": [
        "document",
        "document",
        "documents",
        "documents"
      ],
      "url": "Audit.LogEvent",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Services",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Execute a JPA query against the Audit Service. This is returning a blob with the query result. The result is a serialized JSON array. You can use the context to set query variables but you must prefix using 'audit.query.' the context variable keys that match the ones in the query.",
      "hierarchyPath": "/op:Audit.Query",
      "label": "Query Audit Service",
      "name": "Audit.Query",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.services.AuditQuery",
      "params": [
        {
          "description": null,
          "isRequired": true,
          "name": "query",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": "TextArea"
        },
        {
          "description": null,
          "isRequired": false,
          "name": "maxResults",
          "order": 0,
          "type": "int",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "pageNo",
          "order": 0,
          "type": "int",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "void",
        "blob"
      ],
      "url": "Audit.Query",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [
        "Audit.PageProvider"
      ],
      "category": "Fetch",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Perform a query or a named provider query against Audit logs. Result is paginated. The query result will become the input for the next operation. If no query or provider name is given, a query based on default Audit page provider will be executed.",
      "hierarchyPath": "/op:Audit.QueryWithPageProvider",
      "label": "Audit Query With Page Provider",
      "name": "Audit.QueryWithPageProvider",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.services.AuditPageProviderOperation",
      "params": [
        {
          "description": null,
          "isRequired": false,
          "name": "currentPageIndex",
          "order": 0,
          "type": "integer",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "language",
          "order": 0,
          "type": "string",
          "values": [
            "NXQL"
          ],
          "widget": "Option"
        },
        {
          "description": null,
          "isRequired": false,
          "name": "maxResults",
          "order": 0,
          "type": "integer",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "namedQueryParams",
          "order": 0,
          "type": "properties",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "page",
          "order": 0,
          "type": "integer",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "pageSize",
          "order": 0,
          "type": "integer",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "providerName",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "query",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "queryParams",
          "order": 0,
          "type": "stringlist",
          "values": [],
          "widget": null
        },
        {
          "description": "Sort by properties (separated by comma)",
          "isRequired": false,
          "name": "sortBy",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "sortInfo",
          "order": 0,
          "type": "stringlist",
          "values": [],
          "widget": null
        },
        {
          "description": "Sort order, ASC or DESC",
          "isRequired": false,
          "name": "sortOrder",
          "order": 0,
          "type": "string",
          "values": [
            "ASC",
            "DESC"
          ],
          "widget": "Option"
        }
      ],
      "signature": [
        "void",
        "paginable"
      ],
      "url": "Audit.QueryWithPageProvider",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Services",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Restore log entries from an audit storage implementation to the audit backend.",
      "hierarchyPath": "/op:Audit.Restore",
      "label": "Restore log entries",
      "name": "Audit.Restore",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.services.AuditRestore",
      "params": [
        {
          "description": null,
          "isRequired": true,
          "name": "auditStorage",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "batchSize",
          "order": 0,
          "type": "int",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "keepAlive",
          "order": 0,
          "type": "int",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "void",
        "void"
      ],
      "url": "Audit.Restore",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [
        "BlobHolder.Attach"
      ],
      "category": "Files",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Attach the input file(s) to the current document using the BlobHolder abstraction",
      "hierarchyPath": "/op:BlobHolder.AttachOnCurrentDocument",
      "label": "Attach File or files to the currentDocument.",
      "name": "BlobHolder.AttachOnCurrentDocument",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.services.BlobHolderAttach",
      "params": [
        {
          "description": null,
          "isRequired": false,
          "name": "useMainBlob",
          "order": 0,
          "type": "boolean",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "bloblist",
        "document",
        "blob",
        "document"
      ],
      "url": "BlobHolder.AttachOnCurrentDocument",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Services",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Run a bulk action on a set of documents expressed by a NXQL.",
      "hierarchyPath": "/op:Bulk.RunAction",
      "label": "Run a bulk command",
      "name": "Bulk.RunAction",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.services.bulk.BulkRunAction",
      "params": [
        {
          "description": null,
          "isRequired": true,
          "name": "action",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "batchSize",
          "order": 0,
          "type": "int",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "bucketSize",
          "order": 0,
          "type": "int",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "excludeDocs",
          "order": 0,
          "type": "stringlist",
          "values": [],
          "widget": null
        },
        {
          "description": "Named parameters to pass to the page provider to fill in query variables.",
          "isRequired": false,
          "name": "namedParameters",
          "order": 0,
          "type": "properties",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "parameters",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "providerName",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "query",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "queryLimit",
          "order": 0,
          "type": "long",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "queryParams",
          "order": 0,
          "type": "stringlist",
          "values": [],
          "widget": null
        },
        {
          "description": "Quick filter properties (separated by comma)",
          "isRequired": false,
          "name": "quickFilters",
          "order": 0,
          "type": "stringlist",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "repositoryName",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "void",
        "bulkstatus"
      ],
      "url": "Bulk.RunAction",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Services",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Wait until Bulk computation is done. This operation is meant to be used for tests. Its usage in production is not recommended.",
      "hierarchyPath": "/op:Bulk.WaitForAction",
      "label": "Wait for Bulk computation",
      "name": "Bulk.WaitForAction",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.services.bulk.BulkWaitForAction",
      "params": [
        {
          "description": null,
          "isRequired": true,
          "name": "commandId",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "timeoutSecond",
          "order": 0,
          "type": "long",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "void",
        "boolean"
      ],
      "since": "10.2",
      "url": "Bulk.WaitForAction",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [
        "Collection.CreateCollection"
      ],
      "category": "Document",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Create a new collection. This is returning the document serialization of the created collection.",
      "hierarchyPath": "/op:Collection.Create",
      "label": "Create a collection",
      "name": "Collection.Create",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.collections.CreateCollectionOperation",
      "params": [
        {
          "description": null,
          "isRequired": true,
          "name": "name",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "description",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "void",
        "document",
        "document",
        "document"
      ],
      "url": "Collection.Create",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Document",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Get the list of documents visible by the currentUser in a collection. This is returning a list of documents.",
      "hierarchyPath": "/op:Collection.GetDocumentsFromCollection",
      "label": "Get documents from collection",
      "name": "Collection.GetDocumentsFromCollection",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.collections.GetDocumentsFromCollectionOperation",
      "params": [],
      "signature": [
        "document",
        "documents"
      ],
      "url": "Collection.GetDocumentsFromCollection",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Document",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Remove a list of documents from a collection. No value is returned.",
      "hierarchyPath": "/op:Collection.RemoveFromCollection",
      "label": "Remove from collection",
      "name": "Collection.RemoveFromCollection",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.collections.RemoveFromCollectionOperation",
      "params": [
        {
          "description": null,
          "isRequired": true,
          "name": "collection",
          "order": 0,
          "type": "document",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "document",
        "document",
        "documents",
        "documents"
      ],
      "url": "Collection.RemoveFromCollection",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Services",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Get the collection list accessible by the current user. This is returning a blob containing a serialized JSON array..",
      "hierarchyPath": "/op:Collection.Suggestion",
      "label": "Get collection suggestion",
      "name": "Collection.Suggestion",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.collections.SuggestCollectionEntry",
      "params": [
        {
          "description": null,
          "isRequired": false,
          "name": "currentPageIndex",
          "order": 0,
          "type": "integer",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "lang",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "pageSize",
          "order": 0,
          "type": "integer",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "searchTerm",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "void",
        "blob"
      ],
      "url": "Collection.Suggestion",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [
        "Document.GetPrincipalEmails"
      ],
      "category": "Users & Groups",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Fetch the principal emails that have a given permission on the input document and then set them in the context under the given key variable name. The operation returns the input document. You can later use the list of principals set by this operation on the context from another operation. The 'key' argument represents the variable name and the 'permission' argument the permission to check. If the 'ignore groups' argument is false then groups are recursively resolved, extracting user members of these groups. Be <b>warned</b> that this may be a very consuming operation.<ul>Note that <li></li><li>groups are not included</li><li>the list pushed into the context is a string list of emails.</li></ul>",
      "hierarchyPath": "/op:Context.GetEmailsWithPermissionOnDoc",
      "label": "Get Principal Emails",
      "name": "Context.GetEmailsWithPermissionOnDoc",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.users.GetDocumentPrincipalEmails",
      "params": [
        {
          "description": null,
          "isRequired": true,
          "name": "permission",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": true,
          "name": "variable name",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "ignore groups",
          "order": 0,
          "type": "boolean",
          "values": [
            "false"
          ],
          "widget": null
        }
      ],
      "signature": [
        "document",
        "document"
      ],
      "url": "Context.GetEmailsWithPermissionOnDoc",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [
        "Document.GetUsersAndGroups"
      ],
      "category": "Users & Groups",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Fetch the users and groups that have a given permission on the input document and then set them in the context under the given key variable name. The operation returns the input document. You can later use the list of identifiers set by this operation on the context from another operation. The 'key' argument represents the variable name and the 'permission' argument the permission to check. If the 'ignore groups' argument is false then groups will be part of the result. If the 'resolve groups' argument is true then groups are recursively resolved, adding user members of these groups in place of them. Be <b>warned</b> that this may be a very consuming operation. If the 'prefix identifiers' argument is true, then user identifiers are prefixed by 'user:' and groups identifiers are prefixed by 'group:'.",
      "hierarchyPath": "/op:Context.GetUsersGroupIdsWithPermissionOnDoc",
      "label": "Get Users and Groups",
      "name": "Context.GetUsersGroupIdsWithPermissionOnDoc",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.users.GetDocumentUsersAndGroups",
      "params": [
        {
          "description": null,
          "isRequired": true,
          "name": "permission",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": true,
          "name": "variable name",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "ignore groups",
          "order": 0,
          "type": "boolean",
          "values": [
            "false"
          ],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "prefix identifiers",
          "order": 0,
          "type": "boolean",
          "values": [
            "false"
          ],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "resolve groups",
          "order": 0,
          "type": "boolean",
          "values": [
            "false"
          ],
          "widget": null
        }
      ],
      "signature": [
        "document",
        "document"
      ],
      "url": "Context.GetUsersGroupIdsWithPermissionOnDoc",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Services",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Retrieve data collected by one or more Counters",
      "hierarchyPath": "/op:Counters.GET",
      "label": "Retrieve counters values",
      "name": "Counters.GET",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.management.GetCounters",
      "params": [
        {
          "description": null,
          "isRequired": true,
          "name": "counterNames",
          "order": 0,
          "type": "stringlist",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "void",
        "blob"
      ],
      "url": "Counters.GET",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Services",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Creates directory entries. Entries are sent as a JSON array. Returning the created entries ids as a JSON array.",
      "hierarchyPath": "/op:Directory.CreateEntries",
      "label": "Creates directory entries",
      "name": "Directory.CreateEntries",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.services.directory.CreateDirectoryEntries",
      "params": [
        {
          "description": null,
          "isRequired": true,
          "name": "directoryName",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": true,
          "name": "entries",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "void",
        "blob"
      ],
      "url": "Directory.CreateEntries",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Services",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Add a new entry in the <i>vocabularyName</i> vocabulary only if <i>id</i> is not found (an existing entry isnot updated). If <i>label</i> is empty, it is set to the id. WARNING: Current user must have enough rights to write in a vocabulary.",
      "hierarchyPath": "/op:Directory.CreateVocabularyEntry",
      "label": "Vocabulary: Add Entry",
      "name": "Directory.CreateVocabularyEntry",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.services.directory.CreateVocabularyEntry",
      "params": [
        {
          "description": null,
          "isRequired": true,
          "name": "id",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": true,
          "name": "vocabularyName",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "label",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "obsolete",
          "order": 0,
          "type": "long",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "ordering",
          "order": 0,
          "type": "long",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "parent",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "void",
        "void"
      ],
      "url": "Directory.CreateVocabularyEntry",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Services",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Deletes directory entries. Entries ids to delete are sent through a JSON array. Returns deleted entries id as a JSON array.",
      "hierarchyPath": "/op:Directory.DeleteEntries",
      "label": "Deletes directory entries",
      "name": "Directory.DeleteEntries",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.services.directory.DeleteDirectoryEntries",
      "params": [
        {
          "description": null,
          "isRequired": true,
          "name": "directoryName",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": true,
          "name": "entries",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "markObsolete",
          "order": 0,
          "type": "boolean",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "void",
        "blob"
      ],
      "url": "Directory.DeleteEntries",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Services",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Get the entries of a directory. This is returning a blob containing a serialized JSON array. The input document, if specified, is used as a context for a potential local configuration of the directory.",
      "hierarchyPath": "/op:Directory.Entries",
      "label": "Get directory entries",
      "name": "Directory.Entries",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.services.GetDirectoryEntries",
      "params": [
        {
          "description": null,
          "isRequired": true,
          "name": "directoryName",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "lang",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "translateLabels",
          "order": 0,
          "type": "boolean",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "void",
        "blob",
        "document",
        "blob"
      ],
      "url": "Directory.Entries",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Services",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Load directory entries from a CSV file. Depending on the data loading policy, duplicate entries are ignored, updated or trigger an error.",
      "hierarchyPath": "/op:Directory.LoadFromCSV",
      "label": "Load directory entries from CSV file",
      "name": "Directory.LoadFromCSV",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.services.directory.LoadFromCSV",
      "params": [
        {
          "description": null,
          "isRequired": true,
          "name": "dataLoadingPolicy",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": true,
          "name": "directoryName",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "blob",
        "void"
      ],
      "url": "Directory.LoadFromCSV",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Services",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Executes a query using given filter and return only the column *<b>columnName</b>*. The result is assigned to the context variable *<b>variableName</b>*. The filters are specified as <i>key=value</i> pairs separated by a new line. The key used for a filter is the column name of the directory. To specify multi-line values you can use a \\ character followed by a new line. <p>Example:<pre>firstName=John<br>lastName=doe</pre>By default, the search filters use exact match. You can do a fulltext search on some specific columns using the fulltextFields. it's specified as comma separated columnName, for instance : <p>Example:<pre>firstName,lastName</pre>",
      "hierarchyPath": "/op:Directory.Projection",
      "label": "Get a Directory Projection",
      "name": "Directory.Projection",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.services.directory.DirectoryProjection",
      "params": [
        {
          "description": null,
          "isRequired": true,
          "name": "columnName",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": true,
          "name": "directoryName",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": true,
          "name": "variableName",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "filters",
          "order": 0,
          "type": "properties",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "fulltextFields",
          "order": 0,
          "type": "stringlist",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "void",
        "void"
      ],
      "since": "5.7.2",
      "url": "Directory.Projection",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Services",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Reads directory entries. Entries ids to read are sent as a JSON array. Returns the entries as a JSON array of JSON objects containing all fields.",
      "hierarchyPath": "/op:Directory.ReadEntries",
      "label": "Reads directory entries",
      "name": "Directory.ReadEntries",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.services.directory.ReadDirectoryEntries",
      "params": [
        {
          "description": null,
          "isRequired": true,
          "name": "directoryName",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": true,
          "name": "entries",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "lang",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "translateLabels",
          "order": 0,
          "type": "boolean",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "void",
        "blob"
      ],
      "url": "Directory.ReadEntries",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Services",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Get the entries suggestions of a directory. This is returning a blob containing a serialized JSON array. Prefix parameter is used to filter the entries.",
      "hierarchyPath": "/op:Directory.SuggestEntries",
      "label": "Get suggested directory entries",
      "name": "Directory.SuggestEntries",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.services.directory.SuggestDirectoryEntries",
      "params": [
        {
          "description": null,
          "isRequired": true,
          "name": "directoryName",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "absoluteLabelSeparator",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "canSelectParent",
          "order": 0,
          "type": "boolean",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "caseSensitive",
          "order": 0,
          "type": "boolean",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "contains",
          "order": 0,
          "type": "boolean",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "dbl10n",
          "order": 0,
          "type": "boolean",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "displayObsoleteEntries",
          "order": 0,
          "type": "boolean",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "filterParent",
          "order": 0,
          "type": "boolean",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "filters",
          "order": 0,
          "type": "properties",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "keySeparator",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "labelFieldName",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "lang",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "limit",
          "order": 0,
          "type": "int",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "localize",
          "order": 0,
          "type": "boolean",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "searchTerm",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "void",
        "blob"
      ],
      "url": "Directory.SuggestEntries",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Services",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Updates directory entries. Entries to update are sent as a JSON array. Returns the updated entries ids as a JSON array of JSON objects containing all fields",
      "hierarchyPath": "/op:Directory.UpdateEntries",
      "label": "Updates directory entries",
      "name": "Directory.UpdateEntries",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.services.directory.UpdateDirectoryEntries",
      "params": [
        {
          "description": null,
          "isRequired": true,
          "name": "directoryName",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": true,
          "name": "entries",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "void",
        "blob"
      ],
      "url": "Directory.UpdateEntries",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [
        "Relations.CreateRelation"
      ],
      "category": "Services",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Create a relation between 2 documents. The subject of the relation will be the input of the operation and the object of the relation will be retrieved from the context using the 'object' field. The 'predicate' field specifies the relation predicate (When using a known predicate, use the full URL like 'http://purl.org/dc/terms/IsBasedOn', unknown predicates will be treated as plain strings and be the same on the subject and object). The 'outgoing' flag indicates the direction of the relation - the default is false which means the relation will go from the input object to the object specified as 'object' parameter. Return back the subject document.",
      "hierarchyPath": "/op:Document.AddRelation",
      "label": "Create Relation",
      "name": "Document.AddRelation",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.services.CreateRelation",
      "params": [
        {
          "description": null,
          "isRequired": true,
          "name": "object",
          "order": 0,
          "type": "document",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": true,
          "name": "predicate",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "outgoing",
          "order": 0,
          "type": "boolean",
          "values": [
            "false"
          ],
          "widget": null
        }
      ],
      "signature": [
        "document",
        "document",
        "documents",
        "documents"
      ],
      "url": "Document.AddRelation",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [
        "Collection.AddToCollection"
      ],
      "category": "Document",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Add a list of documents in a collection. No value is returned.",
      "hierarchyPath": "/op:Document.AddToCollection",
      "label": "Add document to collection",
      "name": "Document.AddToCollection",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.collections.AddToCollectionOperation",
      "params": [
        {
          "description": null,
          "isRequired": true,
          "name": "collection",
          "order": 0,
          "type": "document",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "document",
        "document",
        "documents",
        "documents"
      ],
      "url": "Document.AddToCollection",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [
        "Collection.AddToFavorites"
      ],
      "category": "Document",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Add a list of documents in the favorites. No value is returned.",
      "hierarchyPath": "/op:Document.AddToFavorites",
      "label": "Add document to favorites",
      "name": "Document.AddToFavorites",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.collections.AddToFavoritesOperation",
      "params": [],
      "signature": [
        "document",
        "document",
        "documents",
        "documents"
      ],
      "url": "Document.AddToFavorites",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [
        "Relations.DeleteRelation"
      ],
      "category": "Services",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Delete a relation between 2 documents. The subject of the relation will be the input of the operation and the object of the relation will be retrieved from the context using the 'object' field. The 'predicate' field specifies the relation predicate (When using a known predicate, use the full URL like 'purl.org/dc/terms/IsBasedOn', unknown predicates will be treated as plain strings and be the same on the subject and object). The 'outgoing' flag indicates the direction of the relation - the default is false which means the relation will go from the input object to the object specified as 'object' parameter. Return back the subject document.",
      "hierarchyPath": "/op:Document.DeleteRelation",
      "label": "Delete Relation",
      "name": "Document.DeleteRelation",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.services.DeleteRelation",
      "params": [
        {
          "description": null,
          "isRequired": true,
          "name": "object",
          "order": 0,
          "type": "document",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": true,
          "name": "predicate",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "outgoing",
          "order": 0,
          "type": "boolean",
          "values": [
            "false"
          ],
          "widget": null
        }
      ],
      "signature": [
        "document",
        "document",
        "documents",
        "documents"
      ],
      "url": "Document.DeleteRelation",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [
        "Relations.GetRelations"
      ],
      "category": "Services",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Get the relations for the input document. The 'outgoing' parameter ca be used to specify whether outgoing or incoming relations should be returned. Retuns a document list.",
      "hierarchyPath": "/op:Document.GetLinkedDocuments",
      "label": "Get Linked Documents",
      "name": "Document.GetLinkedDocuments",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.services.GetRelations",
      "params": [
        {
          "description": null,
          "isRequired": true,
          "name": "predicate",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "graphName",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "outgoing",
          "order": 0,
          "type": "boolean",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "document",
        "documents"
      ],
      "url": "Document.GetLinkedDocuments",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [
        "Notification.SendMail"
      ],
      "category": "Notification",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Send an email using the input document to the specified recipients. You can use the HTML parameter to specify whether you message is in HTML format or in plain text. Also you can attach any blob on the current document to the message by using the comma separated list of xpath expressions 'files'. If you xpath points to a blob list all blobs in the list will be attached. Return back the input document(s). If rollbackOnError is true, the whole chain will be rollbacked if an error occurs while trying to send the email (for instance if no SMTP server is configured), else a simple warning will be logged and the chain will continue.",
      "hierarchyPath": "/op:Document.Mail",
      "label": "Send E-Mail",
      "name": "Document.Mail",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.notification.SendMail",
      "params": [
        {
          "description": null,
          "isRequired": true,
          "name": "from",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": true,
          "name": "message",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": "MailTemplate"
        },
        {
          "description": null,
          "isRequired": true,
          "name": "subject",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "HTML",
          "order": 0,
          "type": "boolean",
          "values": [
            "false"
          ],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "Strict User Resolution",
          "order": 0,
          "type": "boolean",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "bcc",
          "order": 0,
          "type": "stringlist",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "cc",
          "order": 0,
          "type": "stringlist",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "files",
          "order": 0,
          "type": "stringlist",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "replyto",
          "order": 0,
          "type": "stringlist",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "rollbackOnError",
          "order": 0,
          "type": "boolean",
          "values": [
            "true"
          ],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "to",
          "order": 0,
          "type": "stringlist",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "viewId",
          "order": 0,
          "type": "string",
          "values": [
            "view_documents"
          ],
          "widget": null
        }
      ],
      "signature": [
        "document",
        "document",
        "documents",
        "documents"
      ],
      "url": "Document.Mail",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Document",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Move member1 of a collection right after member2 of the same collection. If member2 is not sepcified, the member1 is moved to first position. Returns true if successfully moved.",
      "hierarchyPath": "/op:Document.MoveCollectionMember",
      "label": "Reorder members of a collection",
      "name": "Document.MoveCollectionMember",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.collections.MoveCollectionMemberOperation",
      "params": [
        {
          "description": null,
          "isRequired": true,
          "name": "member1",
          "order": 0,
          "type": "document",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "member2",
          "order": 0,
          "type": "document",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "document",
        "boolean"
      ],
      "url": "Document.MoveCollectionMember",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [
        "Collection.RemoveFromFavorites"
      ],
      "category": "Document",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Remove a list of documents from the favorites. No value is returned.",
      "hierarchyPath": "/op:Document.RemoveFromFavorites",
      "label": "Remove from favorites",
      "name": "Document.RemoveFromFavorites",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.collections.RemoveFromFavoritesOperation",
      "params": [],
      "signature": [
        "document",
        "document",
        "documents",
        "documents"
      ],
      "url": "Document.RemoveFromFavorites",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Document",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Fetch the favorites document root collection.",
      "hierarchyPath": "/op:Favorite.Fetch",
      "label": "Fetch favorites root collection",
      "name": "Favorite.Fetch",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.collections.FetchFavorites",
      "params": [],
      "signature": [
        "void",
        "document"
      ],
      "url": "Favorite.Fetch",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [
        "Collection.GetElementsInFavorite"
      ],
      "category": "Document",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Get the list of documents visible from the currentUser's favorites. This is returning a list of documents.",
      "hierarchyPath": "/op:Favorite.GetDocuments",
      "label": "Get documents from favorites",
      "name": "Favorite.GetDocuments",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.collections.GetDocumentsFromFavoritesOperation",
      "params": [],
      "signature": [
        "document",
        "documents"
      ],
      "url": "Favorite.GetDocuments",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Services",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Create a Folder using the FileManagerService and set multiple properties on it.<p>The properties are specified as <i>key=value</i> pairs separated by a new line. The key used for a property is the property xpath. To specify multi-line values you can use a \\ character followed by a new line. <p>Example:<pre>dc:title=The Folder Title<br>dc:description=foo bar</pre>For updating a date, you will need to expose the value as ISO 8601 format, for instance : <p>Example:<pre>dc:title=The Folder Title<br>dc:issued=@{org.nuxeo.ecm.core.schema.utils.DateParser.formatW3CDateTime(CurrentDate.date)}</pre><p>To update a multi-valued field with multiple values:<pre>custom:multivalued=a,b,c,d</pre><p>Returns back the created folder.",
      "hierarchyPath": "/op:FileManager.CreateFolder",
      "label": "Create Folder",
      "name": "FileManager.CreateFolder",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.services.FileManagerCreateFolder",
      "params": [
        {
          "description": null,
          "isRequired": true,
          "name": "title",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": "Whether to overwrite an existing folder with the same title, defaults to false",
          "isRequired": false,
          "name": "overwrite",
          "order": 0,
          "type": "boolean",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "properties",
          "order": 0,
          "type": "properties",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "document",
        "document"
      ],
      "url": "FileManager.CreateFolder",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Services",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Create Document(s) from Blob(s) using the FileManagerService. The destination container must be passed in a Context variable named currentDocument.",
      "hierarchyPath": "/op:FileManager.Import",
      "label": "Create Document from file",
      "name": "FileManager.Import",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.services.FileManagerImport",
      "params": [
        {
          "description": null,
          "isRequired": false,
          "name": "noMimeTypeCheck",
          "order": 0,
          "type": "boolean",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "overwite",
          "order": 0,
          "type": "boolean",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "overwrite",
          "order": 0,
          "type": "boolean",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "bloblist",
        "documents",
        "blob",
        "document"
      ],
      "url": "FileManager.Import",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Chain",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "hierarchyPath": "/op:FileManager.ImportWithMetaData",
      "label": "FileManager.ImportWithMetaData",
      "name": "FileManager.ImportWithMetaData",
      "operationClass": "org.nuxeo.ecm.automation.core.impl.OperationChainCompiler.CompiledChainImpl",
      "params": [],
      "signature": [
        "bloblist",
        "documents",
        "blob",
        "document"
      ],
      "url": "FileManager.ImportWithMetaData",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Services",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Create Document(s) from Blob(s) using the FileManagerService and set multiple properties on them.The destination container must be passed in a Context variable named currentDocument. <p>The properties are specified as <i>key=value</i> pairs separated by a new line. The key used for a property is the property xpath. To specify multi-line values you can use a \\ character followed by a new line. <p>Example:<pre>dc:title=The Document Title<br>dc:description=foo bar</pre>For updating a date, you will need to expose the value as ISO 8601 format, for instance : <p>Example:<pre>dc:title=The Document Title<br>dc:issued=@{org.nuxeo.ecm.core.schema.utils.DateParser.formatW3CDateTime(CurrentDate.date)}</pre><p>Returns back the updated document.<p>To update a multi-valued field with multiple values:<pre>custom:multivalued=a,b,c,d</pre>",
      "hierarchyPath": "/op:FileManager.ImportWithProperties",
      "label": "Create Document from file",
      "name": "FileManager.ImportWithProperties",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.services.FileManagerImportWithProperties",
      "params": [
        {
          "description": null,
          "isRequired": true,
          "name": "properties",
          "order": 0,
          "type": "properties",
          "values": [],
          "widget": null
        },
        {
          "description": "Whether to check the blob's mime-type against the file name, defaults to true",
          "isRequired": false,
          "name": "mimeTypeCheck",
          "order": 0,
          "type": "boolean",
          "values": [],
          "widget": null
        },
        {
          "description": "Whether to overwrite an existing file with the same title, defaults to false",
          "isRequired": false,
          "name": "overwrite",
          "order": 0,
          "type": "boolean",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "bloblist",
        "documents",
        "blob",
        "document"
      ],
      "url": "FileManager.ImportWithProperties",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Users & Groups",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Create or Update Group",
      "hierarchyPath": "/op:Group.CreateOrUpdate",
      "label": "Create or Update Group",
      "name": "Group.CreateOrUpdate",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.users.CreateOrUpdateGroup",
      "params": [
        {
          "description": null,
          "isRequired": true,
          "name": "groupname",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "description",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "grouplabel",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "members",
          "order": 0,
          "type": "stringlist",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "mode",
          "order": 0,
          "type": "string",
          "values": [
            "createOrUpdate",
            "create",
            "update"
          ],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "parentGroups",
          "order": 0,
          "type": "stringlist",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "properties",
          "order": 0,
          "type": "properties",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "subGroups",
          "order": 0,
          "type": "stringlist",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "tenantId",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "void",
        "void"
      ],
      "url": "Group.CreateOrUpdate",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Services",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Starts Metrics reporters.",
      "hierarchyPath": "/op:Metrics.Start",
      "label": "Metrics",
      "name": "Metrics.Start",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.services.MetricsStart",
      "params": [],
      "signature": [
        "void",
        "void"
      ],
      "url": "Metrics.Start",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Services",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Stops Metrics rerporer.",
      "hierarchyPath": "/op:Metrics.Stop",
      "label": "Metrics",
      "name": "Metrics.Stop",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.services.MetricsStop",
      "params": [],
      "signature": [
        "void",
        "void"
      ],
      "url": "Metrics.Stop",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [
        "Document.PageProvider"
      ],
      "category": "Fetch",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Perform a named provider query on the repository. Result is paginated. The query result will become the input for the next operation.",
      "hierarchyPath": "/op:Repository.PageProvider",
      "label": "PageProvider",
      "name": "Repository.PageProvider",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.services.DocumentPageProviderOperation",
      "params": [
        {
          "description": null,
          "isRequired": true,
          "name": "providerName",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "currentPageIndex",
          "order": 0,
          "type": "integer",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "documentLinkBuilder",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": "Highlight properties (separated by comma)",
          "isRequired": false,
          "name": "highlights",
          "order": 0,
          "type": "stringlist",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "language",
          "order": 0,
          "type": "string",
          "values": [
            "NXQL"
          ],
          "widget": "Option"
        },
        {
          "description": "Named parameters to pass to the page provider to fill in query variables.",
          "isRequired": false,
          "name": "namedParameters",
          "order": 0,
          "type": "properties",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "offset",
          "order": 0,
          "type": "integer",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "pageSize",
          "order": 0,
          "type": "integer",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "queryParams",
          "order": 0,
          "type": "stringlist",
          "values": [],
          "widget": null
        },
        {
          "description": "Quick filter properties (separated by comma)",
          "isRequired": false,
          "name": "quickFilters",
          "order": 0,
          "type": "stringlist",
          "values": [],
          "widget": null
        },
        {
          "description": "Sort by properties (separated by comma)",
          "isRequired": false,
          "name": "sortBy",
          "order": 0,
          "type": "stringlist",
          "values": [],
          "widget": null
        },
        {
          "description": "Sort order, ASC or DESC",
          "isRequired": false,
          "name": "sortOrder",
          "order": 0,
          "type": "stringlist",
          "values": [
            "ASC",
            "DESC"
          ],
          "widget": "Option"
        }
      ],
      "signature": [
        "void",
        "documents"
      ],
      "url": "Repository.PageProvider",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [
        "Document.Query"
      ],
      "category": "Fetch",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Perform a query on the repository. The document list returned will become the input for the next operation.If no provider name is given, a query returning all the documents that the user has access to will be executed.",
      "hierarchyPath": "/op:Repository.Query",
      "label": "Query",
      "name": "Repository.Query",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.services.query.DocumentPaginatedQuery",
      "params": [
        {
          "description": "Target listing page.",
          "isRequired": false,
          "name": "currentPageIndex",
          "order": 0,
          "type": "integer",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "escapePatternParameters",
          "order": 0,
          "type": "boolean",
          "values": [],
          "widget": null
        },
        {
          "description": "The query language.",
          "isRequired": false,
          "name": "language",
          "order": 0,
          "type": "string",
          "values": [
            "NXQL"
          ],
          "widget": "Option"
        },
        {
          "description": null,
          "isRequired": false,
          "name": "maxResults",
          "order": 0,
          "type": "integer",
          "values": [],
          "widget": null
        },
        {
          "description": "Named parameters to pass to the page provider to fill in query variables.",
          "isRequired": false,
          "name": "namedParameters",
          "order": 0,
          "type": "properties",
          "values": [],
          "widget": null
        },
        {
          "description": "Entries number per page.",
          "isRequired": false,
          "name": "pageSize",
          "order": 0,
          "type": "integer",
          "values": [],
          "widget": null
        },
        {
          "description": "The query to perform.",
          "isRequired": false,
          "name": "query",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": "Ordered query parameters.",
          "isRequired": false,
          "name": "queryParams",
          "order": 0,
          "type": "stringlist",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "quotePatternParameters",
          "order": 0,
          "type": "boolean",
          "values": [],
          "widget": null
        },
        {
          "description": "Sort by properties (separated by comma)",
          "isRequired": false,
          "name": "sortBy",
          "order": 0,
          "type": "stringlist",
          "values": [],
          "widget": null
        },
        {
          "description": "Sort order, ASC or DESC",
          "isRequired": false,
          "name": "sortOrder",
          "order": 0,
          "type": "stringlist",
          "values": [
            "ASC",
            "DESC"
          ],
          "widget": "Option"
        }
      ],
      "signature": [
        "void",
        "documents"
      ],
      "since": "6.0",
      "url": "Repository.Query",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [
        "Resultset.PageProvider"
      ],
      "category": "Fetch",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Perform a named provider query on the repository. Result is paginated.The result is returned as a RecordSet (QueryAndFetch) rather than as a List of DocumentThe query result will become the input for the next operation.",
      "hierarchyPath": "/op:Repository.ResultSetPageProvider",
      "label": "QueryAndFetch",
      "name": "Repository.ResultSetPageProvider",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.services.ResultSetPageProviderOperation",
      "params": [
        {
          "description": null,
          "isRequired": false,
          "name": "currentPageIndex",
          "order": 0,
          "type": "integer",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "language",
          "order": 0,
          "type": "string",
          "values": [
            "NXQL",
            "CMIS"
          ],
          "widget": "Option"
        },
        {
          "description": null,
          "isRequired": false,
          "name": "maxResults",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": "Named parameters to pass to the page provider to fill in query variables.",
          "isRequired": false,
          "name": "namedParameters",
          "order": 0,
          "type": "properties",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "pageSize",
          "order": 0,
          "type": "integer",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "providerName",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "queryParams",
          "order": 0,
          "type": "stringlist",
          "values": [],
          "widget": null
        },
        {
          "description": "Sort by properties (separated by comma)",
          "isRequired": false,
          "name": "sortBy",
          "order": 0,
          "type": "stringlist",
          "values": [],
          "widget": null
        },
        {
          "description": "Sort order, ASC or DESC",
          "isRequired": false,
          "name": "sortOrder",
          "order": 0,
          "type": "stringlist",
          "values": [
            "ASC",
            "DESC"
          ],
          "widget": "Option"
        }
      ],
      "signature": [
        "void",
        "recordset"
      ],
      "url": "Repository.ResultSetPageProvider",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [
        "ResultSet.PaginatedQuery"
      ],
      "category": "Fetch",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Perform a query on the repository. The result set returned will become the input for the next operation. If no query or provider name is given, a query returning all the documents that the user has access to will be executed.",
      "hierarchyPath": "/op:Repository.ResultSetQuery",
      "label": "ResultSet Query",
      "name": "Repository.ResultSetQuery",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.services.query.ResultSetPaginatedQuery",
      "params": [
        {
          "description": "The query to perform.",
          "isRequired": true,
          "name": "query",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": "Target listing page.",
          "isRequired": false,
          "name": "currentPageIndex",
          "order": 0,
          "type": "integer",
          "values": [],
          "widget": null
        },
        {
          "description": "The query language.",
          "isRequired": false,
          "name": "language",
          "order": 0,
          "type": "string",
          "values": [
            "NXQL",
            "CMIS"
          ],
          "widget": "Option"
        },
        {
          "description": null,
          "isRequired": false,
          "name": "maxResults",
          "order": 0,
          "type": "integer",
          "values": [],
          "widget": null
        },
        {
          "description": "Named parameters to pass to the page provider to fill in query variables.",
          "isRequired": false,
          "name": "namedParameters",
          "order": 0,
          "type": "properties",
          "values": [],
          "widget": null
        },
        {
          "description": "Entries number per page.",
          "isRequired": false,
          "name": "pageSize",
          "order": 0,
          "type": "integer",
          "values": [],
          "widget": null
        },
        {
          "description": "Ordered query parameters.",
          "isRequired": false,
          "name": "queryParams",
          "order": 0,
          "type": "stringlist",
          "values": [],
          "widget": null
        },
        {
          "description": "Sort by properties (separated by comma)",
          "isRequired": false,
          "name": "sortBy",
          "order": 0,
          "type": "stringlist",
          "values": [],
          "widget": null
        },
        {
          "description": "Sort order, ASC or DESC",
          "isRequired": false,
          "name": "sortOrder",
          "order": 0,
          "type": "stringlist",
          "values": [
            "ASC",
            "DESC"
          ],
          "widget": "Option"
        }
      ],
      "signature": [
        "void",
        "recordset"
      ],
      "since": "6.0",
      "url": "Repository.ResultSetQuery",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [
        "Context.RunOperationOnProvider"
      ],
      "category": "Execution Flow",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Run an operation for each page of the provider defined by the provider name, the operation input is the curent page ",
      "hierarchyPath": "/op:RunOperationOnProvider",
      "label": "Run For Each Page",
      "name": "RunOperationOnProvider",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.services.RunOperationOnProvider",
      "params": [
        {
          "description": null,
          "isRequired": true,
          "name": "id",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "isolate",
          "order": 0,
          "type": "boolean",
          "values": [
            "true"
          ],
          "widget": null
        }
      ],
      "signature": [
        "documents",
        "void"
      ],
      "url": "RunOperationOnProvider",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [
        "Services.CreateUser"
      ],
      "category": "Users & Groups",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Create or Update User.",
      "hierarchyPath": "/op:User.CreateOrUpdate",
      "label": "Create or Update User",
      "name": "User.CreateOrUpdate",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.users.CreateOrUpdateUser",
      "params": [
        {
          "description": null,
          "isRequired": true,
          "name": "username",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "company",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "email",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "firstName",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "groups",
          "order": 0,
          "type": "stringlist",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "lastName",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "mode",
          "order": 0,
          "type": "string",
          "values": [
            "createOrUpdate",
            "create",
            "update"
          ],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "password",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "properties",
          "order": 0,
          "type": "properties",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "tenantId",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "void",
        "void"
      ],
      "url": "User.CreateOrUpdate",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [
        "NuxeoPrincipal.Get"
      ],
      "category": "Users & Groups",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Retrieve Nuxeo principal and export it as a DocumentModel, if login parameter is not set the Operation will return informations about the current user, otherwise Directory Administration rights are required.",
      "hierarchyPath": "/op:User.Get",
      "label": "Get Nuxeo Principal",
      "name": "User.Get",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.users.GetNuxeoPrincipal",
      "params": [
        {
          "description": null,
          "isRequired": false,
          "name": "login",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "void",
        "document"
      ],
      "url": "User.Get",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [
        "Collection.GetCollections"
      ],
      "category": "Document",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Get the list of all the collections visible by the currentUser. This is returning a list of collections.",
      "hierarchyPath": "/op:User.GetCollections",
      "label": "Get collections",
      "name": "User.GetCollections",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.collections.GetCollectionsOperation",
      "params": [
        {
          "description": null,
          "isRequired": true,
          "name": "searchTerm",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "void",
        "documents"
      ],
      "url": "User.GetCollections",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [
        "UserWorkspace.Get"
      ],
      "category": "Users & Groups",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Retrieve user's personal workspace.",
      "hierarchyPath": "/op:User.GetUserWorkspace",
      "label": "Get Home",
      "name": "User.GetUserWorkspace",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.services.UserWorkspace",
      "params": [],
      "signature": [
        "void",
        "document"
      ],
      "url": "User.GetUserWorkspace",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Users & Groups",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Stores a registration request and returns its ID.",
      "hierarchyPath": "/op:User.Invite",
      "label": "Invite a user",
      "name": "User.Invite",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.services.UserInvite",
      "params": [
        {
          "description": null,
          "isRequired": false,
          "name": "autoAccept",
          "order": 0,
          "type": "boolean",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "comment",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "info",
          "order": 0,
          "type": "map",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "validationMethod",
          "order": 0,
          "type": "validationmethod",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "nuxeoprincipal",
        "string"
      ],
      "url": "User.Invite",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [
        "Services.QueryUsers"
      ],
      "category": "Users & Groups",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Query users on a combination of their username, firstName and lastName fields, or on any of them (pattern).",
      "hierarchyPath": "/op:User.Query",
      "label": "Query users",
      "name": "User.Query",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.users.QueryUsers",
      "params": [
        {
          "description": null,
          "isRequired": false,
          "name": "firstName",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "lastName",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "pattern",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "tenantId",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "username",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "void",
        "blob"
      ],
      "url": "User.Query",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Services",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Get the user/group list of the running instance. This is returning a blob containing a serialized JSON array..",
      "hierarchyPath": "/op:UserGroup.Suggestion",
      "label": "Get user/group suggestion",
      "name": "UserGroup.Suggestion",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.users.SuggestUserEntries",
      "params": [
        {
          "description": "Whether to take into account subgroups when evaluating groupRestriction.",
          "isRequired": false,
          "name": "allowSubGroupsRestriction",
          "order": 0,
          "type": "boolean",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "displayEmailInSuggestion",
          "order": 0,
          "type": "boolean",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "firstLabelField",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": "Enter the id of a group to suggest only user from this group.",
          "isRequired": false,
          "name": "groupRestriction",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": "If set, remove all administrator groups from the suggestions",
          "isRequired": false,
          "name": "hideAdminGroups",
          "order": 0,
          "type": "boolean",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "hideFirstLabel",
          "order": 0,
          "type": "boolean",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "hideIcon",
          "order": 0,
          "type": "boolean",
          "values": [],
          "widget": null
        },
        {
          "description": "If set, remove power users group from the suggestions",
          "isRequired": false,
          "name": "hidePowerUsersGroup",
          "order": 0,
          "type": "boolean",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "hideSecondLabel",
          "order": 0,
          "type": "boolean",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "hideThirdLabel",
          "order": 0,
          "type": "boolean",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "lang",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "searchTerm",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "searchType",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "secondLabelField",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "thirdLabelField",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "userSuggestionMaxSearchResults",
          "order": 0,
          "type": "integer",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "void",
        "blob"
      ],
      "url": "UserGroup.Suggestion",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Chain",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "hierarchyPath": "/op:VersionAndAttachFile",
      "label": "VersionAndAttachFile",
      "name": "VersionAndAttachFile",
      "operationClass": "org.nuxeo.ecm.automation.core.impl.OperationChainCompiler.CompiledChainImpl",
      "params": [],
      "signature": [
        "bloblist",
        "document"
      ],
      "url": "VersionAndAttachFile",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Chain",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "hierarchyPath": "/op:VersionAndAttachFiles",
      "label": "VersionAndAttachFiles",
      "name": "VersionAndAttachFiles",
      "operationClass": "org.nuxeo.ecm.automation.core.impl.OperationChainCompiler.CompiledChainImpl",
      "params": [],
      "signature": [
        "bloblist",
        "document"
      ],
      "url": "VersionAndAttachFiles",
      "version": "2021.67.4"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Services",
      "contributingComponent": "org.nuxeo.ecm.core.automation.features.operations",
      "description": "Try to execute again Works that have been send to a dead letter queue by the WorkManager after failure",
      "hierarchyPath": "/op:WorkManager.RunWorkInFailure",
      "label": "Executes Works stored in the dead letter queue",
      "name": "WorkManager.RunWorkInFailure",
      "operationClass": "org.nuxeo.ecm.automation.core.operations.services.workmanager.WorkManagerRunWorkInFailure",
      "params": [
        {
          "description": null,
          "isRequired": false,
          "name": "categoryFilter",
          "order": 0,
          "type": "stringlist",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "dryRun",
          "order": 0,
          "type": "boolean",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "timeoutSeconds",
          "order": 0,
          "type": "long",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "void",
        "blob"
      ],
      "url": "WorkManager.RunWorkInFailure",
      "version": "2021.67.4"
    }
  ],
  "packages": [],
  "pluginSnapshots": {},
  "releaseDate": 1739788074073,
  "version": "2021.67"
}